var peticionHttp = null;
//Función que devuelve el objeto de la clase XMLHttpRequest
function inicializaXhr() {
    if(window.XMLHttpRequest) {
        return new XMLHttpRequest();
}
    else if(window.ActiveXObject) {
        return new ActiveXObject("Microsoft.XMLHTTP");
    }
}

function creaCadenaDeDatos() {
    var nombre = document.getElementById("cliente");
    return "cliente=" + encodeURIComponent(nombre.value) + "&nocache=" + Math.random();
}
//Función que inicia todo el proceso y lleva a cabo la petición al servidor
function consulta(_pagina,formid,capa) {
peticionHttp = inicializaXhr();
var ajax;
var Formulario = document.getElementById(formid);
var longitudFormulario = Formulario.elements.length;
var cadenaFormulario = "";
var sepCampos;


sepCampos = "";
for (var i=0; i <= Formulario.elements.length-1;i++)
 {
 cadenaFormulario += sepCampos+Formulario.elements[i].name+'='+encodeURI(Formulario.elements[i].value); 
sepCampos="&"; 
}
 
if(peticionHttp) {
    peticionHttp.onreadystatechange = procesaRespuestaXML;
    peticionHttp.open("POST", _pagina, true);
    peticionHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  //  var datos = creaCadenaDeDatos();
    //peticionHttp.send(datos);
	peticionHttp.send(cadenaFormulario+"&");
}
}

//Función en la que se procesa el documento XML recibido
function procesaRespuestaXML() {
if(peticionHttp.readyState == 4) {
//	document.getElementById('contenido').innerHTML = peticionHttp.responseText;

	
    if(peticionHttp.status == 200) {
        var documentoXml = peticionHttp.responseXML; //Creamos el objeto de tipo documento XML
        if(!documentoXml.getElementsByTagName('Error')[0]) {//Comprobamos que no se regrese un error como respuesta
            var root = documentoXml.getElementsByTagName('Consulta')[0]; //Obtenemos la raíz del documento
            //Accedermos al contenido de cada campo contenido en el elemento Informacion
            var tabla = root.getElementsByTagName('Tabla')[0];
            exploraRegistrosDeLaTabla(tabla);//Desplegamos todos los registros del elemento Tabla

        }
        else {//En caso de obtener un error desplegamos el mensaje de éste
            var error = documentoXml.getElementsByTagName('Error')[0].firstChild.nodeValue;
            alert(error);
        }
    }
}
}
/*Función que recibe el elemento que contiene los registros del documento XML, recorre cada uno de los
/*registros y almacena el valor de todos sus campos en el objeto objRenglon, al que después envía como
/*parámetro a la función muestraRenglon para desplegarlos en la tabla especificada
*/
function exploraRegistrosDeLaTabla(tablaXML) {
// var objRenglon = new Object();
var objRenglon = new Array();
var tope1 = tablaXML.getElementsByTagName('Registro').length;
for(var i = 0; i < tope1; i++) {
	
    registro = tablaXML.getElementsByTagName('Registro')[i];
    tope2 = registro.getElementsByTagName('Campo').length;
	
    for(var j = 0; j < tope2; j++) {
		
        campo = registro.getElementsByTagName('Campo')[j];

//      objRenglon[campo.getAttribute('nombre')] = campo.firstChild.nodeValue;

      objRenglon[j] = campo.firstChild.nodeValue;  
	  ingresa_formularios(objRenglon);
	  
	  
	  }
	   // muestraRenglon(objRenglon, 'tblInfo');
	  
}


}



